home *** CD-ROM | disk | FTP | other *** search
- #!/usr/local/bin/perl
- #
- # script to read named's named.hosts master file and produce an /etc/hosts
- #
- # Eric Murray 2/2/93
- # ericm@microunity.com
- #
- # THIS SCRIPT DEPENDS ON DIG!!
- #
-
- $domain = "microunity.com"; # domain.
-
- $dig = "./dig axfr $domain";
-
- open(DIG,"$dig |") || die "can't run $dig: $!\n";
- while(<DIG>) {
- /\s+(A|CNAME)\s+/ || next;
- s/\.$domain\.//ig;
- chop;
- @ar = split;
-
- if ($ar[2] eq 'CNAME') {
- $aliases{$ar[3]} .= ' ' . $ar[0];
- }
- else {
- # assume an A record here:
- $ipaddrs{$ar[0]} = $ar[3];
- push(@names,$ar[0]); # i'm lazy today
- }
- }
- close(DIG);
-
- print "#\n#\tMACHINE GENERATED HOSTS FILE!\n#\tDO NOT EDIT!\n#\n#\n";
-
- # produce alphabetically-sorted host file for the anal-compusive among us:
- foreach $name (sort (@names)) {
- print "$ipaddrs{$name}\t$name\t$name.$domain\t$aliases{$name}\n";
- }
-
-